home *** CD-ROM | disk | FTP | other *** search
/ Commodore Disk User Volume 4 #4 / Commodore_Disk_User_Vol.4_4_1991_-.d64 / screen store (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  2KB  |  39 lines

  1. 100 ifpeek(49197)<>53thenload"bin.screenstore",8,1
  2. 1000 sys49158:poke53280,0:poke53281,6:x=5
  3. 1020 print"[147]   screen saver   (c) m.medhurst 1990   [146]":print"[154]screen";peek(2)+1
  4. 1040 print"":print"      this utility allows you to store    anything";
  5. 1050 print" on the text screen including colour. ";
  6. 1060 print"up to 8 screens can be stored inthe hidden ram under the ";
  7. 1070 print"basic & kernal roms..":gosub1640:print"[147]screen";peek(2)+1
  8. 1100 print" sys49158[146][158] sets the screen counter to 0.":print
  9. 1110 print" sys49152[146][158] stores the current screen and colour and increases ";
  10. 1120 print"the screen counter by one."
  11. 1130 print" sys49155[146][158] recalls the last screen and   decreases the screen";
  12. 1140 print" counter by one.":gosub1640:print"[147]screen";peek(2)+1
  13. 1170 print"[155] screens are stored and recalled on a   last in first out basis."
  14. 1180 print" if the screen counter is zero and a    sys49155[146][155] call is made ";
  15. 1190 print"a no screen error[146][155] will be displayed and the program will  stop."
  16. 1200 print" if the screen counter is eight and a    sys49152[146][155] call is made "
  17. 1210 print"a screen full error[146][155] will be displayed   and the ";
  18. 1220 print"program will stop.":gosub1640:print"[147]screen";peek(2)+1
  19. 1250 print"[159]  the number of screens stored can be   checked by peek(2)[159] "
  20. 1260 print"any screen once stored can be recalled   at random by first pokeing";
  21. 1270 print" location 2  with the screen number.";:print" (1-8)"
  22. 1290 print"eg:- poke2,5[159]  followed by sys49155[146][159] will  recall screen 5."
  23. 1300 gosub1640:print"[147]screen";peek(2)+1:print"[176][192][192][192][192][192][192][192][192][192][192][192][192][174]":print"[221]overlapping [221]"
  24. 1340 print"[221]menu's can  [221]":print"[221]be printed  [221]":print"[221]and restored[221]"
  25. 1370 print"[173][192][192][192][192][192][192][192][192][192][192][192][192][189]":gosub1640:print"screen";peek(2)+1:print"[159][176][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  26. 1410 print"[221]overlapping [221]":print"[221]menu's can  [221]":print"[221]be printed  [221]"
  27. 1440 print"[221]and restored[221]":print"[173][192][192][192][192][192][192][192][192][192][192][192][192][189]":gosub1640
  28. 1470 print"screen";peek(2)+1:print"[158][176][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  29. 1490 print"[221]overlapping [221]":print"[221]menu's can  [221]"
  30. 1510 print"[221]be printed  [221]":print"[221]and restored[221]"
  31. 1530 print"[173][192][192][192][192][192][192][192][192][192][192][192][192][189]":gosub1640:print"[147]screen";peek(2)+1
  32. 1560 print"and now to restore the screens":gosub1640:print"[147]":forde=0to1000:nextde:print"[147]"
  33. 1590 forw=1to8:sys49155:forde=0to1000:nextde:nextw:print"[147]now random screens":forde=0to1000:nextde
  34. 1610 forj=0to40:w=int(8*rnd(1)+1):poke2,w:sys49155:forde=0to150:nextde:nextj:forj=0to40
  35. 1620 w=int(8*rnd(1)+1):poke2,w:sys49155:nextj:print"[147]end of demo":end
  36. 1640 poke198,0:print"[154]":printtab(3)"press return[146]"
  37. 1650 getk$:ifk$<>chr$(13)then1650
  38. 1660 sys49152:return
  39.